package com.mes.schedule.result;

import java.util.List;

import com.mes.schedule.domain.Resource;
import com.mes.schedule.domain.ScheduleScheme;

/*import com.mes.schedule.persistence.domain.Resource;
import com.mes.schedule.persistence.domain.SDevice;
import com.mes.schedule.persistence.domain.ScheduleScheme;
*/
public class ScheduleResult {
	//表示整个结果网络，可能是原scheme的克隆
	private  ScheduleScheme scheme;
	private  Double twtCost;
	private Double targetValue;
	private String  algorithmName;
	/**
	 * makespan 距离,segment数量
	 */
	private long makespanCount;
	
	private int totalPartTaskCount;
	private int totalLagPartTaskCount;
	//lqm todo
	//临时用做调度方案的瓶颈设备列表
	//以后应该移出
	private List<? extends Resource> bottleneckList;
	
	
	
	//本次调度耗时
	private long elapsedTime; 
	public ScheduleScheme getScheme() {
		return scheme;
	}
	public void setScheme(ScheduleScheme scheme) {
		this.scheme = scheme;
	}
	public Double getTwtCost() {
		return twtCost;
	}
	public void setTwtCost(Double twtCost) {
		this.twtCost = twtCost;
	}
	public long getElapsedTime() {
		return elapsedTime;
	}
	public void setElapsedTime(long elapsedTime) {
		this.elapsedTime = elapsedTime;
	}
	public int getTotalPartTaskCount() {
		return totalPartTaskCount;
	}
	public void setTotalPartTaskCount(int totalPartTaskCount) {
		this.totalPartTaskCount = totalPartTaskCount;
	}
	public int getTotalLagPartTaskCount() {
		return totalLagPartTaskCount;
	}
	public void setTotalLagPartTaskCount(int totalLagPartTaskCount) {
		this.totalLagPartTaskCount = totalLagPartTaskCount;
	}
	public long getMakespanCount() {
		return makespanCount;
	}
	public void setMakespanCount(long makespanCount) {
		this.makespanCount = makespanCount;
	}
	public Double getTargetValue() {
		return targetValue;
	}
	public void setTargetValue(Double targetValue) {
		this.targetValue = targetValue;
	}
	public String getAlgorithmName() {
		return algorithmName;
	}
	public void setAlgorithmName(String algorithmName) {
		this.algorithmName = algorithmName;
	}
	public List<? extends Resource> getBottleneckList() {
		return bottleneckList;
	}
	public void setBottleneckList(List<? extends Resource> bottleneckList) {
		this.bottleneckList = bottleneckList;
	}

	
	
}
